package com.tianyu.inspection.service.api;

import com.tianyu.inspection.entity.SysTypeDef;

import java.util.List;
import java.util.Set;

/**********************************
 * @Author YSW
 * @Description 阀室类型服务
 * @Date 2021/1/17 - 08:28
 **********************************/

public interface ISysTypeDefService extends IBaseService<SysTypeDef> {

    /**
     * 根据项目查询图层类型列表
     *
     * @param projectId 项目ID
     * @return
     */
    List<SysTypeDef> getMapLayerTypeList(Integer projectId);

    /**
     * 根据项目查询图层类型树形结构
     *
     * @param projectId 项目ID
     * @return
     */

    List<SysTypeDef> getMapLayerTypeTree(Integer projectId, Integer parentId);

    Set<Integer> getMapLayerTypeTreeIds(Integer projectId, Integer parentId);

    /**
     * 根据项目查询阀室类型
     *
     * @param projectId 项目ID
     * @return
     */
    List<SysTypeDef> searchList(Integer projectId);

    SysTypeDef selectById(Integer typeId);

    boolean insert(SysTypeDef sysTypeDef);

    boolean updateById(SysTypeDef sysTypeDef);

    boolean deleteById(Integer sysTypeDefId, Integer parentId);
}
